﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace EncuentraWEB
{
    public partial class Formulario_web18 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            var sUser = (string)Session["User"];
            if (sUser != "admin")
            {
                Response.Redirect("~\\default.aspx");
                return;
            }
            if (!this.IsPostBack)
            {
                btnImgCancelar.Attributes.Add("onclick", "cancel();");
                var strTipo = Request.QueryString["Id"];
                var strID = Request.QueryString["Id1"];

                if (strTipo == "I")
                {
                    txtAIdCoche.Text = "";
                    txtAnioCarroceria.Text = "";
                    txtAnioMotor.Text = "";
                    txtCapacidad.Text = "";
                    txtDominio.Text = "";
                    txtDenominacion.Text = "";
                    txtMarcaCarroceria.Text = "";
                    txtMarcaMotor.Text = "";
                    txtModeloCarroceria.Text = "";
                    txtModeloMotor.Text = "";
                    txtNroCarroceria.Text = "";
                    txtNroMotor.Text = "";
                    var objEmpresa = new clsEmpresas();
                    ddEmpresa.DataTextField = "varDenominacion";
                    ddEmpresa.DataValueField = "intIdEmpresa";
                    var dtEmpresas = objEmpresa.buscar("", "");
                    ddEmpresa.DataSource = dtEmpresas;
                    ddEmpresa.DataBind();

                    return;
                }
                if (strTipo == "M")
                {
                    int intId = Convert.ToInt32(strID);
                    var context = new EncuentraEntities();
                    var de = from x in context.Coches
                             where x.intIdCoche == intId
                             select x;
                    foreach (var coche in de)
                    {
                        
                    txtAIdCoche.Text = Convert.ToString(coche.intIdCoche);
                    txtAnioCarroceria.Text = Convert.ToString(coche.varAnioCarroceria);
                    txtAnioMotor.Text = Convert.ToString(coche.varAnioMotor);
                    txtCapacidad.Text = Convert.ToString(coche.intCapacidad);
                    txtDominio.Text = Convert.ToString(coche.varDominio);
                    txtDenominacion.Text = Convert.ToString(coche.varDenominacion);
                    txtMarcaCarroceria.Text = Convert.ToString(coche.varMarcaCarroceria);
                    txtMarcaMotor.Text = Convert.ToString(coche.varMarcaMotor);
                    txtModeloCarroceria.Text = Convert.ToString(coche.varModeloCarroceria);
                    txtModeloMotor.Text = Convert.ToString(coche.varModeloMotor);
                    txtNroCarroceria.Text = Convert.ToString(coche.varNroCarroceria);
                    txtNroMotor.Text = Convert.ToString(coche.varNroMotor);
                    var objEmpresa = new clsEmpresas();
                    ddEmpresa.DataTextField = "varDenominacion";
                    ddEmpresa.DataValueField = "intIdEmpresa";
                    var dtEmpresas = objEmpresa.buscar("", "");
                    ddEmpresa.DataSource = dtEmpresas;
                    ddEmpresa.DataBind();
                    var type = coche.EmpresasReference.CreateSourceQuery();
                    var a1 = 0;
                    foreach (var obj1 in type)
                    {
                        a1 = obj1.intIdEmpresa;
                    }

                    ddEmpresa.SelectedValue = Convert.ToString(a1);

                    }
                    context.Dispose();
                }
            }
        }


        protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
       {
             var strTipo = Request.QueryString["Id"];
             var intEmpresa = Convert.ToInt32(ddEmpresa.SelectedValue);
            var context = new EncuentraEntities();
            if (strTipo == "I")
            {
                var entCoche = new Coches
                                   {
                                       intCapacidad = Convert.ToInt32(txtCapacidad.Text),
                                       intIdEstado = 0,
                                       varAnioCarroceria = txtAnioCarroceria.Text,
                                       varAnioMotor = txtAnioMotor.Text,
                                       varDenominacion = txtDenominacion.Text,
                                       varMarcaCarroceria = txtMarcaCarroceria.Text,
                                       varDominio = txtDominio.Text,
                                       varMarcaMotor = txtModeloMotor.Text,
                                       varModeloCarroceria = txtModeloCarroceria.Text,
                                       varModeloMotor = this.txtModeloMotor.Text,
                                       varNroCarroceria = this.txtNroCarroceria.Text,
                                       varNroMotor = this.txtNroMotor.Text,
                                   };

            
               try
               {

                  var de = from x in context.Coches
                             select x;
                    var id = de.Max(x => x.intIdCoche);
                   entCoche.intIdCoche = id + 1;
                   

             }
                catch (Exception)
                {
                    entCoche.intIdCoche = 1;
                }
                entCoche.Empresas = context.Empresas.Where(x => x.intIdEmpresa == intEmpresa).First();
                context.AddToCoches(entCoche);

            
            }
            if (strTipo == "M")
            {
                var intId = Convert.ToInt32(txtAIdCoche.Text);
                var de = from x in context.Coches
                         where x.intIdCoche == intId
                         select x;
                foreach (Coches x in de)
                {
                    x.intCapacidad = Convert.ToInt32(txtCapacidad.Text);
                    x.intIdEstado = 0;
                    x.varAnioCarroceria = txtAnioCarroceria.Text;
                    x.varAnioMotor = txtAnioMotor.Text;
                    x.varDenominacion = txtDenominacion.Text;
                    x.varMarcaCarroceria = txtMarcaCarroceria.Text;
                    x.varDominio = txtDominio.Text;
                    x.varMarcaMotor = txtModeloMotor.Text;
                    x.varModeloCarroceria = txtModeloCarroceria.Text;
                    x.varModeloMotor = this.txtModeloMotor.Text;
                    x.varNroCarroceria = this.txtNroCarroceria.Text;
                    x.varNroMotor = this.txtNroMotor.Text;
                    x.Empresas = context.Empresas.Where(x1 => x1.intIdEmpresa == intEmpresa).First();
                }
            }
            context.SaveChanges();
            context.Dispose();

            Response.Write("<script language=\"JavaScript\">");
            Response.Write("javascript: window.parent.document.getElementById('btnAceptar').click();");
            Response.Write("</script>");
        
       
        }
    }
}
